<%--
  Created by IntelliJ IDEA.
  User: User
  Date: 2024/5/14
  Time: 9:56
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <title>Title</title>
    </head>
    <body>
        <%
            // 模拟存储数据
            pageContext.setAttribute("msg","Hello PageContext");
            request.setAttribute("msg","Helo Request");
            session.setAttribute("msg","Hello Session");
            application.setAttribute("msg","Hello Application");
        %>
        <h1>当前页面</h1>
        pageContext:<%=pageContext.getAttribute("msg")%>
        <br>
        request:<%=request.getAttribute("msg")%>
        <br>
        session:<%=session.getAttribute("msg")%>
        <br>
        application:<%=application.getAttribute("msg")%>

        <%
            // 转发到另一个页面,转发之后不是同一个页面，但是共享了请求
            //pageContext数据丢失，其他作用域数据没有丢失
            // request.getRequestDispatcher("/jsp/scope2.jsp").forward(request,response);


            //重定向到另一个页面
            // 重定向之后不是同一个请求，request数据丢失
            //此时session和application数据仍然存在
            // 但是当会话结束之后，session数据丢失
            // application的数据只要服务器不重启，数据就一直存在

            response.sendRedirect(request.getContextPath()+"/jsp/scope2.jsp");
        %>
    </body>
</html>
